﻿using System;

using Game.Common;
using Game.Objects;
using Game.Toolkit.Internal;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using Game.Types;

namespace Game.Toolkit
{
    public class StandardTerrainObjects
    {
        
        public static ObjectType LargeRocks1 
        {
            get { return GetTerrain("Large Rocks 1", TerrainObjectResourceFile.LargeRocks1); }
        }
        
        public static ObjectType LargeRocks2
        {
            get { return GetTerrain("Large Rocks 2", TerrainObjectResourceFile.LargeRocks2); }
        }
        
        public static ObjectType LargeRocks3 
        {
            get { return GetTerrain("Large Rocks 3", TerrainObjectResourceFile.LargeRocks3); }
        }
        
        public static ObjectType SmallRocks1 
        {
            get { return GetTerrain("Small Rocks 1", TerrainObjectResourceFile.SmallRocks1); }
        }
        
        public static ObjectType SmallRocks2
        {
            get { return GetTerrain("Small Rocks 2", TerrainObjectResourceFile.SmallRocks2); }
        }
        
        public static ObjectType SmallRocks3 
        {
            get { return GetTerrain("Small Rocks 3", TerrainObjectResourceFile.SmallRocks3); }
        }
        
        public static ObjectType GetTerrain(string displayName,
                                            BitmapImage ImageSource)
        {
            ObjectTypeBuilder builder = new ObjectTypeBuilder();
            builder.Picture = ImageSource;
            builder.Name = displayName;
            return new ObjectType(builder);
        }
    }
}
